Three-dimensional simulation system

ABSTRACT

A multimodal system and process processed one or more sensor signals and extracts features from the one or more sensor signals through a spatiotemporal correlation between consecutive frames of an image or video sequence. The multimodal system and process determines the movement and direction of the features through an image subtraction, or a coherence measure and synthesizes a musical instrument signal in response to the detected movement and direction or the triggers. The imaginary musical instrument signal is added to an infotainment signal within a vehicle.

PRIORITY CLAIM

This application claims priority to U.S. Provisional Patent Application No. 62/442,297 filed Jan. 4, 2017, titled “Three-Dimensional Simulation System,” which is herein incorporated by reference.

BACKGROUND OF THE DISCLOSURE Technical Field

This disclosure relates to simulations and in particular, to a multimodal user interface that allows a user to interact with the system by movements and voice commands.

Related Art

Singing in a vehicle while playing an imaginary or virtual instrument is a popular way for a driver and other occupants to entertain themselves. Even though occupants are often constrained by seat belts, they can still move around within a vehicle and play an imaginary instrument, tap their fingers in time with a rhythm, or accent a chord by “punching the air”. While this behavior can be amusing, it also reduces driver fatigue that impairs mental processing and decision making that increases the risks of accidents.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure can be better understood with reference to the following drawings and description. The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the disclosure. Moreover, in the figures, like referenced numerals designate corresponding parts throughout the different views.

FIG. 1 is an overhead schematic view of a multimodal user interface that translates user interactions into actions in a virtual environment.

FIG. 2 is a multimodal user interface that translates user interactions into actions in a virtual environment.

FIG. 3 is a multimodal user interface that transmits aural, vision, and hepatic output.

FIG. 4 is a block diagram of a second multimodal user interface that translates user interactions into actions in a virtual environment.

FIG. 5 is a block diagram of a second multimodal user interface that translates user interactions into actions in a virtual environment.

DETAILED DESCRIPTION

A multimodal user interface provides a natural, efficient, and easy method of controlling an application in a vehicle. The interface allows users to interact with tangible and virtual technology in intuitive ways allowing users to control applications such as a synthesizer or a vehicle through natural human interactions or movements unlike conventional methods that rely on a physical input such as a keyboard and a mouse. The multimodal interface enables bi-directional communication allowing application programs to receive user's interactions as input and users to receive perceptible responses by feel, sound (e.g., tactile feedback), and/or a two or three dimensional vision system. The multimodal user interface receives and process multiple virtual inputs at once allowing the interfaces to serve two or more applications running concurrently unlike conventional interfaces. The multimodal interface is application independent and processes an array of sensor input that is unobtrusive and do not rely exclusively on proximity to operate.

FIG. 1 is an overhead view of a multimodal user interface that translates user interactions into actions in a virtual environment rendered within a vehicle 100. While shown as a unitary part of vehicle 100 it may be an accessory or a component part of the vehicle of FIG. 1. In vehicle 100 the driver and one or more co-drivers (not shown) or other passengers' movement and utterances are captured by various sensors. Ultrasound, vision, and sound tracks movements, hand and arm gestures, voice through vision and wave based approaches. In FIG. 1, ultrasonic sensors 104 A through D transmit high frequency sound pulses 108 A though D that cannot be heard but reflect off of persons and objects. A built in receiver measures the period of time reflections or echo that is transmitted back allowing the sensors to determine the speed, rate of change (e.g., acceleration), and direction of a movement. Video devices 102 A and B detect, track, recognize, and in some systems supplement the detection of hand and arm movements or speech (e.g., through lip movement) tracked through the ultrasonic sensors. Although some systems detect and track movement through coded gloves, such as Radio Frequency Identification Tag (RFID) gloves, in FIG. 1 some multimodal user interface uses an appearance based technique to extract image features from the images rendered by video display devices 102 A and B to model the visual appearance of lips, hand and arm gestures. In FIG. 1 microphone signals are captured by microphones 110 A and B and transducers 204 A through D convert electrical signals into aural signals.

In FIG. 2 a feature extraction module 204 detects, tracks, and recognizes gestures and movements including simulations such as when driver or occupant's behavior pretending to play the riffs and solos of an air guitar, for example through a spatiotemporal correlation. In the exemplary multimodal user interface of FIG. 2 at least two consecutive frames of video frames or visual data 202 rendered by the video devices 102 A and B are stored in a scalable queue with location data in a memory. The first image fame is designated the prior frame and the second image frame is designated the current frame. Through similarity or coherence detectors, the difference between the locations between an arm, hand, lips, or head through space and time, respectively, for example, from the prior frame to the current frames is determined to render a dynamic hand, arm, gesture, and speech (through lip reading) detection, a movement direction, an acceleration, and/or space relation between the two video frames or visual data. In addition, or in alternative systems detection and direction is identified through triggers that are activated by a level exceeding predetermined thresholds. And, in another alternative or supplement to some multimodal user interface systems comprises an array of pressure or touch sensors that recognize touch and movement that do not apply feature detection. The speed, acceleration, and direction of the movement may also be concurrently tracked through ultrasonic data 206 sourced through the ultrasonic sensors 104 A and D.

In FIG. 2, external data 208 sourced by external sensors, such the accelerometers or global positioning sensors that are part of wireless devices (not shown), for example, are used to recognize vehicle 10 state (e.g., parked, accelerating, traveling at highway speeds), and/or the motion of the user. For example, if an accelerometer is subject to very fast transient motions, such as motions that simulate a very fast periodic up-and-down motion that cause a user's hand or arm to move back and forth or moving quickly over a short predetermined period of time in close proximity to one location, an air drumming may be recognized by comparing the repetitive periodic motions represented in the external sensor data 206 against bag-of-features representations stored in the memory. Audio data 210 is also processed to identify speech through an automatic speech recognition module (not shown) and physical contact that generates sound such as a hand rapidly striking a surface followed by a rapid rearticulation. The sound may comprise soundmarks that distinguish the sound generated by contact with one physical surface from the sound generated from contact with another physical surface. In FIG. 2 other sensors data 212 such as pressure sensor data sensed from a steering wheel, a dash board, or console is also processed and monitored in time to determine and categorize the magnitude and the direction of one or more continuous or discontinuous motions.

In FIG. 2, the use of touch, sound and high frequency waves, vision systems and/or sensors multimodal user interface can detect head 214, gesture 216, and audio 218 that can be processed by application-independent software platforms 220. Using a rule based-process, the identified actions detected by the feature extraction module 204 may generate electric signals that may either imitate or render virtual instruments like heavy-metal electric guitar, an electric piano, an organ, flute, vocals, etc.; or even natural sounds like ocean waves, etc.; or generate new electronic timbres through a synthesizer application.

The synthesizer application may use various methods to generate electronic signals (sounds). Some waveform synthesis applications include subtractive synthesis, additive synthesis, wavetable synthesis, frequency modulation synthesis, phase distortion synthesis, physical modeling synthesis and sample-based synthesis. Other synthesis applications include subharmonic synthesis, a form of additive synthesis via subharmonics and granular synthesis, sample-based synthesis based on grains of sound, generally resulting in soundscapes or clouds. While usually generated by a musical keyboard, the synthesizer application of FIG. 2 is controlled by the natural behavior or movement of the driver or occupant of vehicle 100 as sensed and processed through the multimodal user interface.

In FIG. 3 the multimodal user interface uses input/output processor 302 to handle the I/O conversions and the output operations. The input/output processor is dedicated to the time sensitive tasks of relaying the audio 304, video 306, sensor (e.g., hepatic signals) and external output to transmitter 312 that includes error detection and control, receipt, transmission and/or the encoding of messages, and in some instances, the management and running of the external devices.

FIG. 4 is a schematic representation of the multimodal user interface. The system 400 is an example system for use in a vehicle 400. The example system configuration includes one or more microphones 110, two or more audio transducers 112, a multimodal user interface processor 402, a synthesizer processor 404 and a signal adder 406. The one or more microphones 110 may capture the audio signal associated with the user and the signals associated with the infotainment sources 408 creating one or more captured audio signal 410. The synthesizer processor 312 generates various audio effects that imitate other sounds or generate new electronic timbres that is added to the signals sourced by the infotainment sources 408 through signal adder 406.

FIG. 5 is a block diagram of a second multimodal user interface that translates user interactions into actions in a virtual environment. The system comprises a processor 502, a non-transitory media such as a memory 504 (the contents of which are accessible by the processor 502) and an I/O interface 506. The I/O interface 506 of FIG. 5 may be used to connect devices such as, for example, additional microphones, audio transducers or loudspeakers, and receive external inputs 508 from other local or remote sources. The memory 504 may store instructions which when executed by the processor 502 causes the system to render some or all of the functionality associated with the multimodal user interface as described herein. For example, the memory 504 may store instructions which when executed by the processor 502 causes the system to render the functionality associated with audio synthesis 404 and multimodal user interface 402. In addition, data structures, temporary variables and other information may store data in the memory 504.

The processors 302, 402, and 404 may comprise a single processor or multiple processors that may be disposed on a single chip, on multiple devices or distributed over more than one system. The processors 302, 402, and 404 may be hardware that executes computer executable instructions or computer code embodied in the memory 504 or in other memory to perform one or more features of the systems described herein. The processors 302, 402, and 404 may include a central processing unit (CPU), a graphics processing unit (GPU), an application specific integrated circuit (ASIC), a digital signal processor (DSP), a field programmable gate array (FPGA), a digital circuit, an analog circuit, a microcontroller, any other type of processor, or any combination thereof.

The memory 504 or storage disclosed may retain an ordered listing of executable instructions for implementing the functions described above. The machine-readable medium may selectively be, but not limited to, an electronic, a magnetic, an optical, an electromagnetic, an infrared, or a semiconductor medium. A non-exhaustive list of examples of a machine-readable medium includes: a portable magnetic or optical disk, a volatile memory, such as a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM or Flash memory), or a database management system. The memory 504 may comprise a single device or multiple devices that may be disposed on one or more dedicated memory devices or on a processor or other similar device. When functions or steps are said to be “responsive to” or occur “in response to” a function or a process, the device functions or steps necessarily occur as a result of the function or message. It is not sufficient that a function or act merely follow or occur subsequent to another. Further, when functions indicate an echo cancellation, echo is removed by subtracting an estimated echo from the transmitted or received signal. And here, an audio transducer converts one form of energy into an aural signal.

The memory 504 may also store computer code, executable by the audio synthesis processor 404, the multimodal user interface 402, and the input/output processor 302, as described herein. The computer code may include instructions executable with the processors 402, 404, and 302. The computer code may be written in any computer language, such as C, C++, assembly language, channel program code, and/or any combination of computer languages. The memory 504 may store information in data structures including, for example, feedback and or echo canceller coefficients that render or estimate echo signal levels.

The functions, acts or tasks illustrated in the figures or described may be executed in response to one or more sets of logic or instructions stored in or on non-transitory computer readable media as well. The functions, acts or tasks are independent of the particular type of instructions set, storage media, processor or processing strategy and may be performed by software, hardware, integrated circuits, firmware, micro code and the like, operating alone or in combination. In one embodiment, the instructions are stored on a removable media device for reading by local or remote systems. In other embodiments, the logic or instructions are stored in a remote location for transfer through a computer network or over wireless or tangible telephone or communication lines. In yet other embodiments, the logic or instructions may be stored within a given computer such as, for example, a CPU.

The system and process reinforces speech and enhances it without distortion or added noise in a vehicle. A vehicle may comprise, without limitation, a car, bus, truck, tractor, motorcycle, bicycle, tricycle, quadricycle, or other cycle, ship, submarine, boat or other watercraft, helicopter, drone, airplane or other aircraft, train, tram or other railed vehicle, spaceplane or other spacecraft, and any other type of vehicle whether currently existing or after-arising this disclosure. In other words, it comprises a device or structure for transporting persons or things.

The system and process is fully automated such that application control is continuously adapted the user's natural interactions within the vehicle cabin. The system reduces driver fatigue that impairs mental processing and decision making abilities that increases the risks of accidents. It operates at low delay. The system can be implemented on or within other car systems such as an infotainment processor and digital signal processors or DSPs and co-exist and communicate with other system software. The system is easy and quickly adapted to different vehicle and cabin types and different acoustic environments configurations.

Other systems, methods, features and advantages will be, or will become, apparent to one with skill in the art upon examination of the figures and detailed description. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the disclosure, and be protected by the following claims. 

What is claimed is:
 1. A non-transitory machine-readable medium encoded with machine-executable instructions, wherein execution of the machine-executable instructions is for: processing one or more sensor signals; extracting features from the one or more sensor signals through a spatiotemporal correlation between consecutive frames in an image or video sequence; determining a movement and direction of the features through an image subtraction or through trigger levels activated by exceeding thresholds; synthesizing an imaginary musical instrument signal in response to the detected movement and direction or the triggers; and adding the imaginary musical instrument signal to an infotainment signal.
 2. The non-transitory machine-readable medium of claim 1 where the addition of the imaginary musical instrument occurs within a vehicle.
 3. The non-transitory machine-readable medium of claim 1 further comprising rendering a tactile feedback within a vehicle.
 4. The non-transitory machine-readable medium of claim 1 further comprising rendering a virtual feedback through a vision system.
 5. The non-transitory machine-readable medium of claim 1 where the sensor signals are rendered by a plurality of ultrasonic sensors.
 6. The non-transitory machine-readable medium of claim 1 where the sensor signals are rendered by radio frequency identification sensors within a vehicle.
 7. The non-transitory machine-readable medium of claim 1 further comprising determining a rate of change of the features through the image subtraction.
 8. The non-transitory machine-readable medium of claim 1 further comprising determining a rate of change of the features through the trigger levels activated by exceeding thresholds.
 9. The non-transitory machine-readable medium of claim 1 where determining the movement and the direction occurs through a coherence measurement.
 10. The non-transitory machine-readable medium of claim 1 where determining the movement and the direction occurs through pressure sensors.
 11. A multimodal process comprising: processing one or more sensor signals; extracting features from the one or more sensor signals through a spatiotemporal correlation between consecutive frames in an image or video sequence; determining a movement and direction of the features through an image subtraction or through trigger levels activated by exceeding thresholds; synthesizing an imaginary musical instrument signal in response to the detected movement and direction or the triggers; and adding the imaginary musical instrument signal to an infotainment signal.
 12. The process of claim 11 where the addition of the imaginary musical instrument occurs within a vehicle.
 13. The process of claim 11 further comprising rendering a tactile feedback within a vehicle.
 14. The process of claim 11 further comprising rendering a virtual feedback through a vision system.
 15. The process of claim 11 where the sensor signals are rendered by a plurality of ultrasonic sensors.
 16. The process of claim 11 where the sensor signals are rendered by radio frequency identification sensors within a vehicle.
 17. The process of claim 11 further comprising determining a rate of change of the features through the image subtraction.
 18. The process of claim 11 further comprising determining a rate of change of the features through the trigger levels activated by exceeding thresholds.
 19. The process of claim 11 where determining the movement and the direction occurs through a coherence measurement.
 20. The process of claim 11 where determining the movement and the direction occurs through pressure sensors. 